package com.atguigu.yygh.order.service;

import com.atguigu.yygh.model.order.OrderInfo;
import com.atguigu.yygh.vo.order.OrderCountQueryVo;
import com.atguigu.yygh.vo.order.OrderQueryVo;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;

import java.util.Map;

/**
 * @ClassName OrderService
 * @Description 此类描述:
 * @Author dangchen
 * @DateTime 2022-10-20 10:51
 * @Version 1.0
 */
public interface OrderService extends IService<OrderInfo> {
    //保存订单
    Long saveOrder(String scheduleId,Long patientId);

    //获取订单详情
    OrderInfo getOrderInfo(Long id);

    //分页列表
    IPage<OrderInfo> selectPage(Page<OrderInfo> pageParam, OrderQueryVo orderQueryVo);

    //取消订单
    Boolean cancelOrder(Long orderId);

    //就诊提醒
    void patientTips();

    //订单统计
    Map<String,Object> getCountMap(OrderCountQueryVo orderCountQueryVo);
}
